home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / compuserve-file-archive / 02 Help & Utilities / TXT2BA.SEQ < prev    next >
Text File  |  2019-04-13  |  5KB  |  111 lines

  1. 63700 rem ****************************
  2. 63702 rem *       txt.to.basic       *
  3. 63704 rem *       for  c64/vic       *
  4. 63706 rem *--------------------------*
  5. 63708 rem * convert text to basic    *
  6. 63710 rem * converts sequential      *
  7. 63712 rem * basic listings to true   *
  8. 63714 rem * commodore basic program. *
  9. 63716 rem * ------------------------ *
  10. 63718 rem * note: program should be  *
  11. 63720 rem * be saved as sequential.  *
  12. 63722 rem * (on tape or disk).       *
  13. 63724 rem * ++++++++++++++++++++++++ *
  14. 63726 rem * loc. 186 determines dev. *
  15. 63728 rem * to load from.            *
  16. 63730 rem * (ie poke 186,1 for tape) *
  17. 63732 rem * ######################## *
  18. 63734 rem * adapted from original    *
  19. 63736 rem * (c) 1984 by joel rubin   *
  20. 63738 rem * -- copying  permitted -- *
  21. 63740 rem * ######################## *
  22. 63742 rem * modified by tony romer   *
  23. 63744 rem * to do case conversion if *
  24. 63746 rem * requested. if any of the *
  25. 63748 rem * basic keywords read in   *
  26. 63750 rem * upper then reply yes to  *
  27. 63752 rem * request for conversion.  *
  28. 63754 rem * (basic upper characters  *
  29. 63756 rem * are actually lower case  *
  30. 63758 rem * in the upper/lower case  *
  31. 63760 rem * mode.)         may/85    *
  32. 63762 rem * ------------------------ *
  33. 63764 rem * limits: lines longer     *
  34. 63766 rem * than 80 chars. will be   *
  35. 63768 rem * truncated.               *
  36. 63770 rem * use a text editor/ word  *
  37. 63772 rem * processor to remove      *
  38. 63774 rem * carriage returns in the  *
  39. 63776 rem * middle of a line, if any.*
  40. 63778 rem * ------------------------ *
  41. 63780 rem * this routine will delete *
  42. 63782 rem * itself.                  *
  43. 63784 rem * do not try to convert    *
  44. 63786 rem * listings with line #'s   *
  45. 63788 rem * greater than 63699!!     *
  46. 63790 rem ****************************
  47. 63792 rem ---- lower memtop -----
  48. 63794 poke56,peek(56)-1:poke55,0:clr
  49. 63796 print:input"filename";file$
  50. 63798 print:print"convert to lower case? "
  51. 63800 print"(respond yes if keywords have"
  52. 63802 print" any upper characters) (y/n): ";
  53. 63804 poke 198,0
  54. 63806 get lower$:if lower$ = "" then63806
  55. 63808 print lower$:print
  56. 63810 rem ****************************
  57. 63812 rem * read ml into buff at 679 *
  58. 63814 rem ****************************
  59. 63816 for i=679 to 766: read byte:poke i,byte:checksum=checksum+byte
  60. 63818 next:if checksum <> 11394 then stop
  61. 63820 meml=peek(56):poke706,meml:poke752,meml
  62. 63822 ifpeek(65532)=34thenpoke725,198:poke763,202:poke766,196
  63. 63824 if lower$ <> "y" then poke 691,24:poke 692,234
  64. 63826 rem *****************************
  65. 63828 rem * open file on device (186) *
  66. 63830 rem *****************************
  67. 63832 dev=peek(186):poke 253,dev:if dev<>1 then open15,dev,15,"i"
  68. 63834 open2,dev,dev-1,file$
  69. 63836 rem *****************************
  70. 63838 rem * check error status if disk*
  71. 63840 rem *****************************
  72. 63842 if dev=1 then63850
  73. 63844 input#15,dstatus,err$,track,sect
  74. 63846 if dstatus <> 0 then print:print dstatus;err$;track;sect:end
  75. 63850 poke 144,0
  76. 63852 rem *****************************
  77. 63854 rem * main processing section   *
  78. 63856 rem * ------------------------- *
  79. 63858 rem * create line from input.   *
  80. 63860 rem * stuff type ahead buffer.  *
  81. 63862 rem * print line, & run 63876   *
  82. 63864 rem * end program. type ahead   *
  83. 63866 rem * buff will force read of   *
  84. 63868 rem * text into basic, and will *
  85. 63870 rem * resume via the run 63876  *
  86. 63872 rem * that was printed.         *
  87. 63874 rem *****************************
  88. 63876 poke 152,1:poke601,2:poke611,peek(253):poke621,peek(253)+95
  89. 63878 rem *****************************
  90. 63880 rem * done if status <> 0.      *
  91. 63884 rem *****************************
  92. 63886 if status <>0 thenclose2:poke56,peek(56)+1:sys715:clr:end
  93. 63888 line$="":sys679:var=peek(45)+256*peek(46)
  94. 63890 poke var+2,peek(254):poke var+3,0:poke var+4,peek(56)
  95. 63892 if len(line$) > 80 then line$=left$(line$,80)
  96. 63894 rem *****************************
  97. 63896 rem * print line & run 63876    *
  98. 63898 rem *****************************
  99. 63900 printchr$(147):fori=0to2:print:next:printline$
  100. 63902 print"goto 63876"chr$(19)
  101. 63904 rem ***************************
  102. 63906 rem  read via type ahead buff.
  103. 63908 rem ***************************
  104. 63910 fori=1to5:poke631+i,13:next:poke198,5:sys748:end
  105. 63912 data162,2,32,198,255,160,0,132,254,32,228,255
  106. 63914 data201,128,144,3,56,233,128,201,13,240,10,164,254
  107. 63916 data153,0,159,230,254,56,176,232,76,204,255
  108. 63918 data169,212,133,20,169,248,133,21,32,19,166,160,0
  109. 63920 data152,145,95,200,145,95,24,165,95,105,2,133,45,165,96,105,0,133,46,96
  110. 63922 data 166,254,189,0,159,157,0,2,202,16,247,166,254,32,202,170,76,134,164
  111.